"""
@Time : 2021/9/13 11:59 
@Author : 常雷
@File : t_7组数.py 
@Software: PyCharm
"""
# 1,2,3,4,5, 能组合成多少个互不相同且无重复的三位数

# 方法1
n = 0   # 计数
num_s = {1, 2, 3, 4, 5}     # 将要求数字组成集合用于跟下面比较(总集)
for i in range(100, 1000):          # 一个个的遍历所有三位数(i),
    s = set(int(j) for j in str(i))      # 将三位数(i)变成字符串并按位保存为集合
    # 验证是否是子集
    # 方法:将子集与中集做差集是否得到空集
    if not (s - num_s):
        print(i)
        n += 1

print(n)

# 穷举法
n = 0   # 计数
num_s = {1, 2, 3, 4, 5}     # 将要求数字组成集合用于跟下面比较(总集)
for num1 in num_s:
    for num2 in num_s:
        for num3 in num_s:
            n += 1

print(n)

# 由穷举法进一步推算
n = 0   # 计数
'''
因为每一个数都可以放在三位不同地点
所以有算法
定:
    a是几位数
    b是集合长度
'''
a = 3
b = 5
n = b ** a
print(n)